home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2009 May / maximum-cd-2009-05.iso / DiscContents / Firefox Setup 3.0.6.exe / nonlocalized / chrome / browser.jar / content / browser / sanitize.xul < prev    next >
Encoding:
Extensible Markup Language  |  2008-05-06  |  7.2 KB  |  164 lines

  1. <?xml version="1.0"?>
  2.  
  3.  
  4. <?xml-stylesheet href="chrome://global/skin/"?>
  5.  
  6. <!DOCTYPE prefwindow [
  7.   <!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd">
  8.   <!ENTITY % sanitizeDTD SYSTEM "chrome://browser/locale/sanitize.dtd">
  9.   %brandDTD;
  10.   %sanitizeDTD;
  11. ]>
  12.  
  13. <prefwindow id="SanitizeDialog" type="child"
  14.             xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
  15.             dlgbuttons="accept,cancel"
  16.             title="&sanitizeDialog.title;"
  17.             style="width: &window.width;;"
  18.             ondialogaccept="gSanitizePromptDialog.sanitize();">
  19.  
  20.   <prefpane id="SanitizeDialogPane" onpaneload="gSanitizePromptDialog.init();">
  21.     <stringbundle id="bundleBrowser" src="chrome://browser/locale/browser.properties"/>
  22.     
  23.     <script type="application/x-javascript" src="chrome://browser/content/sanitize.js"/>
  24.     <script type="application/x-javascript">
  25.     <![CDATA[
  26.       var gSanitizePromptDialog = {
  27.         init: function ()
  28.         {
  29.           var s = new Sanitizer();
  30.           var sanitizePreferences = document.getElementById("sanitizePreferences");
  31.           for (var i = 0; i < sanitizePreferences.childNodes.length; ++i) {
  32.             var preference = sanitizePreferences.childNodes[i];
  33.             var name = s.getNameFromPreference(preference.name);
  34.             if (!s.canClearItem(name)) 
  35.               preference.disabled = true;
  36.           }
  37.           
  38.           var bundleBrowser = document.getElementById("bundleBrowser");
  39.           document.documentElement.getButton("accept").label = bundleBrowser.getString("sanitizeButton");
  40.         },
  41.       
  42.         sanitize: function ()
  43.         {
  44.           var s = new Sanitizer();
  45.           var sanitizePreferences = document.getElementById("sanitizePreferences");
  46.           var preference, name;
  47.           for (var i = 0; i < sanitizePreferences.childNodes.length; ++i) {
  48.             preference = sanitizePreferences.childNodes[i];
  49.             if (preference.value) {
  50.               name = s.getNameFromPreference(preference.name);
  51.               try {
  52.                 s.clearItem(name);
  53.               } catch(er) {
  54.                 dump(er + " sanitizing " + name); 
  55.                 // TODO: give user feedback about partially failed sanitization
  56.               }
  57.             }
  58.           }
  59.         },
  60.         
  61.         onReadGeneric: function ()
  62.         {
  63.           var preferences = document.getElementById("sanitizePreferences");
  64.           var found = false;
  65.           for (var i = 0; i < preferences.childNodes.length; ++i) {
  66.             var preference = preferences.childNodes[i];
  67.             if (preference.value && !preference.disabled) {
  68.               found = true;
  69.               break;
  70.             }
  71.           }
  72.           try {
  73.             document.documentElement.getButton("accept").disabled = !found;
  74.           }
  75.           catch (e) { }
  76.           return undefined;
  77.         },
  78.  
  79.         onReadDownloads: function (aEvent)
  80.         {
  81.           // Call the common function that will update the accept button if needed
  82.           this.onReadGeneric();
  83.  
  84.           let historyPref = document.getElementById("privacy.item.history")
  85.           let downloadPref = document.getElementById("privacy.item.downloads");
  86.  
  87.           // Disable the checkbox if history is selected
  88.           let downloads = document.getElementById("downloads-checkbox");
  89.           downloads.disabled = historyPref.value;
  90.  
  91.           // The "Download History" checkbox is selected if either of the history or
  92.           // downloads preferences are true.
  93.           return historyPref.value || downloadPref.value;
  94.         },
  95.  
  96.         updateDownloadHistory: function ()
  97.         {
  98.           // When toggling history, we automatically clear download history too,
  99.           // so we disable that control and set its value to true.
  100.           let downloads = document.getElementById("downloads-checkbox");
  101.           let history = document.getElementById("history-checkbox");
  102.           let s = new Sanitizer();
  103.           downloads.disabled = history.checked ||
  104.                                !s.canClearItem("downloads");
  105.           if (history.checked)
  106.             downloads.checked = true;
  107.         },
  108.       };
  109.     ]]>
  110.     </script>
  111.  
  112.     <preferences id="sanitizePreferences">
  113.       <preference id="privacy.item.history"               name="privacy.item.history"               type="bool" readonly="true"/>
  114.       <preference id="privacy.item.formdata"              name="privacy.item.formdata"              type="bool" readonly="true"/>
  115.       <preference id="privacy.item.passwords"             name="privacy.item.passwords"             type="bool" readonly="true"/>
  116.       <preference id="privacy.item.downloads"             name="privacy.item.downloads"             type="bool" readonly="true"/>
  117.       <preference id="privacy.item.cookies"               name="privacy.item.cookies"               type="bool" readonly="true"/>
  118.       <preference id="privacy.item.cache"                 name="privacy.item.cache"                 type="bool" readonly="true"/>
  119.       <preference id="privacy.item.offlineApps"           name="privacy.item.offlineApps"           type="bool"/>
  120.       <preference id="privacy.item.sessions"              name="privacy.item.sessions"              type="bool" readonly="true"/>
  121.     </preferences>
  122.  
  123.     <description>&sanitizeItems.label;</description>
  124.  
  125.     <checkbox id="history-checkbox"
  126.               label="&itemHistory.label;"
  127.               accesskey="&itemHistory.accesskey;"
  128.               preference="privacy.item.history"
  129.               oncommand="gSanitizePromptDialog.updateDownloadHistory();"
  130.               onsyncfrompreference="return gSanitizePromptDialog.onReadGeneric();"/>
  131.     <checkbox id="downloads-checkbox"
  132.               class="indent"
  133.               label="&itemDownloads.label;"
  134.               accesskey="&itemDownloads.accesskey;"
  135.               preference="privacy.item.downloads"
  136.               onsyncfrompreference="return gSanitizePromptDialog.onReadDownloads();"/>
  137.     <checkbox label="&itemFormSearchHistory.label;"
  138.               accesskey="&itemFormSearchHistory.accesskey;"
  139.               preference="privacy.item.formdata"
  140.               onsyncfrompreference="return gSanitizePromptDialog.onReadGeneric();"/>
  141.     <checkbox label="&itemCache.label;"
  142.               accesskey="&itemCache.accesskey;"
  143.               preference="privacy.item.cache"
  144.               onsyncfrompreference="return gSanitizePromptDialog.onReadGeneric();"/>
  145.     <checkbox label="&itemCookies.label;"
  146.               accesskey="&itemCookies.accesskey;"
  147.               preference="privacy.item.cookies"
  148.               onsyncfrompreference="return gSanitizePromptDialog.onReadGeneric();"/>
  149.     <checkbox label="&itemOfflineApps.label;"
  150.               accesskey="&itemOfflineApps.accesskey;"
  151.               preference="privacy.item.offlineApps"
  152.               onsyncfrompreference="return gSanitizePromptDialog.onReadGeneric();"/>
  153.     <checkbox label="&itemPasswords.label;"
  154.               accesskey="&itemPasswords.accesskey;"
  155.               preference="privacy.item.passwords"
  156.               onsyncfrompreference="return gSanitizePromptDialog.onReadGeneric();"/>
  157.     <checkbox label="&itemSessions.label;"
  158.               accesskey="&itemSessions.accesskey;"
  159.               preference="privacy.item.sessions"
  160.               onsyncfrompreference="return gSanitizePromptDialog.onReadGeneric();"/>
  161.  
  162.   </prefpane>
  163. </prefwindow>
  164.